#include "StdAfx.h"
#include "Position.h"

//===========================================================================
Position::Position(
    void
)   : m_x( -1 )
    , m_y( -1 )
{
}

//===========================================================================
Position::Position(
    const IPosition & position
)   : m_x( position.GetX() )
    , m_y( position.GetY() )
{
}

//===========================================================================
Position::Position(
    unsigned int x,
    unsigned int y
)   : m_x( x )
    , m_y( y )
{
}

//===========================================================================
Position::~Position(void)
{
}

//===========================================================================
void Position::Set(
    unsigned int x,
    unsigned int y
) {
    this->m_x = x;
    this->m_y = y;
}

//===========================================================================
unsigned int Position::GetRowDiff(
    const IPosition & from,
    const IPosition & to
) {
    return ( int )abs( long( from.GetX() - to.GetX() ) );
}